package com.xqboss.apps.mapper.synthesis;

import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xqboss.apps.domain.synthesis.Synthesis;
import com.xqboss.apps.dto.synthesis.SynthesisPageDto;
import com.xqboss.apps.vo.synthesis.SynthesisDetailVo;
import com.xqboss.apps.vo.synthesis.SynthesisPageVo;
import com.xqboss.apps.vo.synthesis.SynthesisPlanConsumeDetailVo;
import com.xqboss.apps.vo.synthesis.SynthesisPlanDetailVo;
import com.xqboss.apps.vo.synthesis.WebSynthesisDetailVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * <p>
 * 合成活动 Mapper 接口
 * </p>
 *
 * @author 木鱼
 * @since 2023-11-17
 */
@Mapper
@Repository
public interface SynthesisMapper extends BaseMapper<Synthesis> {
    List<SynthesisPageVo> selectWebPage(@Param("req") SynthesisPageDto req);

    SynthesisPlanDetailVo selectPlanDetail(@Param("id") Long id);

    List<SynthesisPlanConsumeDetailVo> selectPlanGroupDetail(@Param("synthesisId") Long synthesisId, @Param("planId") Long planId);

    Integer updateInfoById(@Param("synthesis") Synthesis synthesis);

    WebSynthesisDetailVo selectBasic(Long id);

    SynthesisDetailVo selectDetailInfo(Long synthesisId);

    List<SynthesisPageVo> selectAppPage(SynthesisPageDto req);
}
